//入口函数
$(function () {

    // 需求1,点击切换
    $('#loginBox a').on('click', function () {
        $('#loginBox').hide()
        $('#regBox').show()
    })
    $('#regBox a').on('click', function () {
        $('#regBox').hide()
        $('#loginBox').show()
    })

    // 需求2,定义校验规则
    // console.log(layui);
    let form = layui.form //把layui里面的form
    // 定义校验规则,使用的是 form.verify()
    // 参数是对象,属性是校验名称,值是校验规则
    form.verify({
        username: [
            /^[a-zA-Z0-9]{1,10}$/,   //这也可以用 /^[\w]{1,10}$/     代表/^[a-zA-Z0-9_]{1,10}$/
            '用户名必须是1-10位字母和数字'
        ],
        pwd: [
            /^[a-zA-Z0-9]{6,15}$/,     // 非空字符串 也可以用 [\S]
            '密码长度必须是6-15位的非空字符串'
        ],
        // 确认密码规则
        repwd: function (value) {
            // console.log(value);  //给那个标签添加规则,这个标签的值就赋值给value (确认密码输入框输入的值)
            let pwd = $('#regBox input[name=password]').val()
            if (pwd !== value) {
                return '两次密码输入不一致!'
            }
        }
    });

    // 需求3,注册功能
    // 定义一个变量,存放layui里面的layer属性  下面弹出框要使用
    let layer = layui.layer
    $('#formReg').on('submit', function (e) {
        // 阻止表单默认提交
        e.preventDefault()
        // 发送axios
        axios({
            method: 'POST',
            url: '/api/reguser',
            // 不能传递对象类型,因为对象类型的头信息是application/json  目前接口文档不支持
            data: $(this).serialize() //a=123$b=456格式
        }).then(res => {
            if (res.data.status !== 0) {
                // layer.msg() 是在layui开发文档里 内置模块的弹出层中
                return layer.msg(res.data.message)  //返回弹出框
            }
            layer.msg('恭喜您,注册成功!')
            // 切换到登录模块
            $('#regBox a').click()
            // 清空表单, DOM元素中,有一个reset() 可以重置表单
            $('#formReg')[0].reset()
        })
    });

    // 需求4,登录功能
    $('#formLogin').on('submit', function (e) {
        e.preventDefault()
        axios({
            method: 'POST',
            url: '/api/login',
            data: $(this).serialize()
        }).then(function (res) {
            if (res.data.status !== 0) {
                return layer.msg(res.data.message)
            }
            // 成功:提示,存储token
            layer.msg('恭喜您,登录成功!')
            // token 用于有权限接口的身份认证      暂时储存  令牌
            localStorage.setItem('token', res.data.token)
            // 页面跳转到 index.html
            location.href = '/index.html'
        })
    })










})